home *** CD-ROM | disk | FTP | other *** search
- Path: uunet!zephyr.ens.tek.com!tekred!saab!billr
- From: billr@saab.CNA.TEK.COM (Bill Randle)
- Newsgroups: comp.sources.games
- Subject: v11i037: vcraps - display-oriented craps game, Patch2 (REPOST)
- Message-ID: <6224@tekred.CNA.TEK.COM>
- Date: 28 Aug 90 17:38:45 GMT
- Sender: news@tekred.CNA.TEK.COM
- Lines: 222
- Approved: billr@saab.CNA.TEK.COM
-
- Submitted-by: Robert Steven Glickstein <bobg+@andrew.cmu.edu>
- Posting-number: Volume 11, Issue 37
- Archive-name: vcraps/Patch2
- Patch-To: vcraps: Volume 11, Issue 34-35
-
- [[This patch adds the 'm' keystroke, which allows the user to review
- previous messages.]]
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of shell archive."
- # Contents: patches02
- # Wrapped by billr@saab on Fri Aug 24 12:10:43 1990
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'patches02' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'patches02'\"
- else
- echo shar: Extracting \"'patches02'\" \(4949 characters\)
- sed "s/^X//" >'patches02' <<'END_OF_FILE'
- X*** dist/vcraps.c Fri Aug 24 13:22:14 1990
- X--- vcraps.c Fri Aug 24 13:13:39 1990
- X***************
- X*** 2,11 ****
- X #include <curses.h>
- X #include <setjmp.h>
- X
- X extern int CrapsErrorDatum;
- X extern int optind;
- X! extern char *optarg;
- X
- X jmp_buf LoopEnv;
- X
- X WINDOW *dontplace4win, *dontplace5win, *dontplace6win, *dontplace8win;
- X--- 2,16 ----
- X #include <curses.h>
- X #include <setjmp.h>
- X
- X+ #define MSGQUEUELEN (20)
- X+
- X extern int CrapsErrorDatum;
- X extern int optind;
- X! extern char *optarg, *malloc();
- X
- X+ int MsgQueueLen, MsgQueueLatest;
- X+ char *MsgQueue[MSGQUEUELEN];
- X+
- X jmp_buf LoopEnv;
- X
- X WINDOW *dontplace4win, *dontplace5win, *dontplace6win, *dontplace8win;
- X***************
- X*** 123,128 ****
- X--- 128,135 ----
- X {
- X int c;
- X
- X+ MsgQueueLen = 0;
- X+ MsgQueueLatest = -1;
- X init();
- X Craps_SetBankroll(&Table, 1000);
- X while ((c = getopt(argc, argv, "b:sx")) != EOF) {
- X***************
- X*** 147,152 ****
- X--- 154,160 ----
- X Driver()
- X {
- X int c, amount, fullupdate = 1, jmpval, die1, die2, i;
- X+ int msgptr, msgcount;
- X char buf[20];
- X CrapsError_t err;
- X CrapsTable_t *t = &Table;
- X***************
- X*** 159,168 ****
- X Update(fullupdate);
- X bcopy(&Table, &OldTable, (sizeof(CrapsTable_t)));
- X fullupdate = 0;
- X! Prompt("Command [12345689abcdfhprt$X?]:");
- X wclear(commandwin);
- X wrefresh(commandwin);
- X! c = Getch("12345689abcdfhprt$X?", 1);
- X switch (c) {
- X case '1':
- X Prompt("[012]:");
- X--- 167,176 ----
- X Update(fullupdate);
- X bcopy(&Table, &OldTable, (sizeof(CrapsTable_t)));
- X fullupdate = 0;
- X! Prompt("Command [12345689abcdfhmprt$X?]:");
- X wclear(commandwin);
- X wrefresh(commandwin);
- X! c = Getch("12345689abcdfhmprt$X?", 1);
- X switch (c) {
- X case '1':
- X Prompt("[012]:");
- X***************
- X*** 546,551 ****
- X--- 554,575 ----
- X break;
- X }
- X break;
- X+ case 'm':
- X+ msgptr = MsgQueueLatest;
- X+ msgcount = 0;
- X+ do {
- X+ if (++msgcount > MsgQueueLen)
- X+ c = ' ';
- X+ else {
- X+ wcenter(msgwin, MsgQueue[msgptr], 0, 0);
- X+ wrefresh(msgwin);
- X+ msgptr = (msgptr - 1 + MSGQUEUELEN) % MSGQUEUELEN;
- X+ c = wgetch(msgwin);
- X+ wclear(msgwin);
- X+ }
- X+ } while (c != ' ');
- X+ wrefresh(msgwin);
- X+ break;
- X case 'p':
- X if (Craps_Point(&Table)) {
- X Prompt("Amount for odds on Pass Line:");
- X***************
- X*** 885,893 ****
- X Message(str)
- X char *str;
- X {
- X wcenter(msgwin, str, 0, 0);
- X wrefresh(msgwin);
- X! while (wgetch(msgwin) != ' ');
- X wclear(msgwin);
- X wrefresh(msgwin);
- X }
- X--- 909,942 ----
- X Message(str)
- X char *str;
- X {
- X+ char *copy = malloc(1 + strlen(str));
- X+ int c, msgptr, msgcount;
- X+
- X+ if (copy) {
- X+ strcpy(copy, str);
- X+ MsgQueueLatest = (MsgQueueLatest + 1) % MSGQUEUELEN;
- X+ if (MsgQueueLen == MSGQUEUELEN)
- X+ free(MsgQueue[MsgQueueLatest]);
- X+ else
- X+ ++MsgQueueLen;
- X+ MsgQueue[MsgQueueLatest] = copy;
- X+ }
- X+ msgptr = (MsgQueueLatest - 1 + MSGQUEUELEN) % MSGQUEUELEN;
- X+ msgcount = 1;
- X wcenter(msgwin, str, 0, 0);
- X wrefresh(msgwin);
- X! do {
- X! c = wgetch(msgwin);
- X! if (c == 'm') {
- X! if (++msgcount > MsgQueueLen)
- X! c = ' ';
- X! else {
- X! wcenter(msgwin, MsgQueue[msgptr], 0, 0);
- X! wrefresh(msgwin);
- X! msgptr = (msgptr - 1 + MSGQUEUELEN) % MSGQUEUELEN;
- X! }
- X! }
- X! } while (c != ' ');
- X wclear(msgwin);
- X wrefresh(msgwin);
- X }
- X***************
- X*** 1697,1704 ****
- X addstr("4dc - don't-come odds on 4 4dp - don't place 4\n\n");
- X addstr("Bets are taken down by typing t followed by one of the\n");
- X addstr("bet commands above.\n\n");
- X! addstr("$ - show total bets X - Exit program\n");
- X! addstr(" continue...");
- X refresh();
- X getch();
- X longjmp(LoopEnv, 2);
- X--- 1746,1753 ----
- X addstr("4dc - don't-come odds on 4 4dp - don't place 4\n\n");
- X addstr("Bets are taken down by typing t followed by one of the\n");
- X addstr("bet commands above.\n\n");
- X! addstr("$ - show total bets m - review messages X - exit\n");
- X! addstr(" continue...");
- X refresh();
- X getch();
- X longjmp(LoopEnv, 2);
- X***************
- X*** 1706,1713 ****
- X
- X ShowTotal()
- X {
- X! int i, total = 0;
- X! char buf[80];
- X
- X for (i = craps_PassLine; i < craps_Bets; ++i)
- X total += Craps_GetBet(&Table, i);
- X--- 1755,1762 ----
- X
- X ShowTotal()
- X {
- X! int i, total = 0;
- X! char buf[80];
- X
- X for (i = craps_PassLine; i < craps_Bets; ++i)
- X total += Craps_GetBet(&Table, i);
- X
- X*** patchlevel.h.orig Fri Aug 24 11:04:33 1990
- X--- patchlevel.h Fri Aug 24 12:09:14 1990
- X***************
- X*** 1 ****
- X! #define PATCHLEVEL 1
- X--- 1 ----
- X! #define PATCHLEVEL 2
- END_OF_FILE
- if test 4949 -ne `wc -c <'patches02'`; then
- echo shar: \"'patches02'\" unpacked with wrong size!
- fi
- # end of 'patches02'
- fi
- echo shar: End of shell archive.
- exit 0
-